// 导入Vue库
import Vue from 'vue'
// 导入App组件，作为Vue实例的主要组件
import App from './App'
// 导入Vuex存储，用于组件间状态管理
import store from './store'
// 导入Vue-router，用于前端路由管理
import router from './router'
// 导入样式标准化库，提供现代的CSS重置方案

import 'normalize.css/normalize.css'
// 导入优化移动端体验的库
import 'default-passive-events'
// 导入ElementUI库，用于提供UI组件
import ElementUI from 'element-ui'
// 导入ElementUI的主题样式
import 'element-ui/lib/theme-chalk/index.css'
// 导入ElementUI的英文语言包，用于国际化
// import locale from 'element-ui/lib/locale/lang/en'
// 导入编辑器的样式
import '@wangeditor/editor/dist/css/style.css'
// 导入全局样式表
import '@/styles/index.scss'

// 导入自定义图标
import '@/icons'
// 导入权限控制模块
import '@/permission'

// 以下为条件导入模拟请求的代码，正式环境需删除
/*
 * 如果你不想使用mock-server，
 * 而想使用MockJs模拟API，
 * 你可以执行: mockXHR()
 *
 * 当前MockJs将在生产环境中使用，
 * 上线前请移除它！！！
 */
// if (process.env.NODE_ENV === 'production') {
//   const { mockXHR } = require('../mock')
//   mockXHR()
// }

// 导入全局过滤器
import * as filters from './filters'
// 注册全局过滤器
Object.keys(filters).forEach((key) => {
  Vue.filter(key, filters[key])
})

// 将ElementUI的语言设置为英文
// Vue.use(ElementUI, { locale })
// 如果想要中文版的ElementUI，按如下方式声明
Vue.use(ElementUI)

// 导入图表库
import VCharts from 'v-charts'
// 将图表库注册到Vue中
Vue.use(VCharts)

// 禁用生产环境提示
Vue.config.productionTip = false

// 创建Vue实例并挂载到#app元素
new Vue({
  el: '#app',
  router,
  store,
  render: h => h(App)
})
